package com.pengweiwei.androidzygote.video.data.beans;

import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;

import com.pengweiwei.androidzygote.BR;

import java.io.Serializable;
import java.util.List;

public class FooterBean extends BaseObservable implements Serializable {


    /**
     * id : 797856618119536640
     * remarks :
     * createDate :
     * updateDate :
     * parentIds : 0,2,
     * name : 观影榜
     * sort : 60
     * hasChildren : false
     * defaultFlag : 0
     * canDel : 0
     * nowFlag :
     * type : video
     * sortVoList : [{"id":"804396718572298240","name":"时长","sortValueList":[{"id":"804396718580686848","name":"0-5"},{"id":"804396718610046976","name":"5-10"},{"id":"804396718614241280","name":"10-30"}]},{"id":"804761372242726912","name":"国别","sortValueList":[{"id":"804761372267892736","name":"中国"},{"id":"804761372293058560","name":"美国"},{"id":"804761372309835776","name":"日本"}]}]
     * parentId : 2
     */

    private String id;
    private String remarks;
    private String createDate;
    private String updateDate;
    private String parentIds;
    private String name;
    private int sort;
    private boolean hasChildren;
    private String defaultFlag;
    private String canDel;
    private String nowFlag;
    private String type;
    private String parentId;
    private List<SortVoListBean> sortVoList;

    @Bindable
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
        notifyPropertyChanged(BR.id);
    }

    @Bindable
    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
        notifyPropertyChanged(BR.remarks);
    }

    @Bindable
    public String getCreateDate() {
        return createDate;
    }

    public void setCreateDate(String createDate) {
        this.createDate = createDate;
        notifyPropertyChanged(BR.createDate);
    }

    @Bindable
    public String getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(String updateDate) {
        this.updateDate = updateDate;
        notifyPropertyChanged(BR.updateDate);
    }

    @Bindable
    public String getParentIds() {
        return parentIds;
    }

    public void setParentIds(String parentIds) {
        this.parentIds = parentIds;
        notifyPropertyChanged(BR.parentIds);
    }

    @Bindable
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
        notifyPropertyChanged(BR.name);
    }

    @Bindable
    public int getSort() {
        return sort;
    }

    public void setSort(int sort) {
        this.sort = sort;
        notifyPropertyChanged(BR.sort);
    }

    @Bindable
    public boolean isHasChildren() {
        return hasChildren;
    }

    public void setHasChildren(boolean hasChildren) {
        this.hasChildren = hasChildren;
        notifyPropertyChanged(BR.hasChildren);
    }

    @Bindable
    public String getDefaultFlag() {
        return defaultFlag;
    }

    public void setDefaultFlag(String defaultFlag) {
        this.defaultFlag = defaultFlag;
        notifyPropertyChanged(BR.defaultFlag);
    }

    @Bindable
    public String getCanDel() {
        return canDel;
    }

    public void setCanDel(String canDel) {
        this.canDel = canDel;
        notifyPropertyChanged(BR.canDel);
    }

    @Bindable
    public String getNowFlag() {
        return nowFlag;
    }

    public void setNowFlag(String nowFlag) {
        this.nowFlag = nowFlag;
        notifyPropertyChanged(BR.nowFlag);
    }

    @Bindable
    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
        notifyPropertyChanged(BR.type);
    }

    @Bindable
    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
        notifyPropertyChanged(BR.parentId);
    }

    @Bindable
    public List<SortVoListBean> getSortVoList() {
        return sortVoList;
    }

    public void setSortVoList(List<SortVoListBean> sortVoList) {
        this.sortVoList = sortVoList;
        notifyPropertyChanged(BR.sortVoList);
    }

    public static class SortVoListBean extends BaseObservable {
        /**
         * id : 804396718572298240
         * name : 时长
         * sortValueList : [{"id":"804396718580686848","name":"0-5"},{"id":"804396718610046976","name":"5-10"},{"id":"804396718614241280","name":"10-30"}]
         */

        private String id;
        private String name;
        private List<SortValueListBean> sortValueList;

        @Bindable
        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
            notifyPropertyChanged(BR.id);
        }

        @Bindable
        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
            notifyPropertyChanged(BR.name);
        }

        @Bindable
        public List<SortValueListBean> getSortValueList() {
            return sortValueList;
        }

        public void setSortValueList(List<SortValueListBean> sortValueList) {
            this.sortValueList = sortValueList;
            notifyPropertyChanged(BR.sortValueList);
        }

        public static class SortValueListBean extends BaseObservable {
            /**
             * id : 804396718580686848
             * name : 0-5
             */

            private String id;
            private String name;

            @Bindable
            public String getId() {
                return id;
            }

            public void setId(String id) {
                this.id = id;
                notifyPropertyChanged(BR.id);
            }

            @Bindable
            public String getName() {
                return name;
            }

            public void setName(String name) {
                this.name = name;
                notifyPropertyChanged(BR.name);
            }
        }
    }
}
